Backed byYCombinator

Cloud platform for coding agents

The standard way for your organization to run coding agents. Each agent gets an isolated sandbox, scoped permissions, and hard budget caps. Full observability included. Get started with a $100 credit.

Claude logoClaudeCodex logoCodexGemini logoGemini
Works with the agents your team already uses

Trusted by 400+ engineering teams

01Run a fleet
The CLI

A fleet of cloud agents, managed like infrastructure

Each agent runs in its own sandbox with scoped credentials and a hard budget. Developers get parallelism, the platform team gets the audit trail.

Learn more
splitshift-api4 sessions

$ agent session start "backfill the rest-period audit table"

using config "Feature builder" (repo default)

session_4Kp9dQ2w · sandbox ready in 8s

$ agent session list

session_4Kp9dQ2wrunningFeature builder$0.62

session_8Rn2tY6crunningFeature builder$1.18

session_2Wm7xB4hrunningMigration runner$0.34

session_9Jf5cV3kcompletedIssue triage$0.87

$ agent session search "tip-pool rounding"

session_9Jf5cV3k · opened PR #514 · 3 days ago

Harnesses

You choose the harness, we handle the infrastructure

Ellipsis is the infrastructure under whichever agent wins: sandboxes, credentials, budgets, and logs stay the same while the harness and model are config fields.

Learn more
agents/alert-responder.yamlClaude Code
claude:  model: claude-opus-5  system: |    Reproduce the Sentry alert and    open a fix.
agents/alert-responder.yamlCodex
codex:  model: bedrock-gpt-5.6-terra  system: |    Reproduce the Sentry alert and    open a fix.

Same sandbox, credentials, budget, and logs either way.

02Defined in code
Agents as code

Agents are defined as code

An agent is a YAML file in your repo: the prompt, the model, the sandbox, the permissions, the budget. Like infrastructure-as-code, for your agents.

Learn more
agents/dependency-triage.yamllive on merge
ellipsis:  version: v1  name: Dependency triageclaude:  model: claude-opus-5  system: |    Update dependencies with failing    audits and open a pull request.trigger:  type: cron  schedule: "0 6 * * 1-5"sandbox:  repositories:    - name: splitshift-api  github:    permissions:      contents: read      pull_requests: writebudget:  session: 5.00
Code review

Code review with your prompts and your models

Choose the models and prompts, add multiple reviewers, and gate what lands with a filter you write. Too noisy? Write a stricter prompt.

Learn more
code_review.yamllive on merge
ellipsis:  version: v1  kind: code_reviewreview:  - name: bugs    claude:      model: claude-opus-5      system: |        Flag correctness bugs and unhandled        edge cases, on the exact line.  - name: migrations    pull_requests:      paths: ["migrations/**"]    claude:      system: |        Check every schema change for lock        risk and backfill safety.filter:  name: gatekeeper  claude:    system: |      Post only findings a senior      engineer would raise.budget:  run: 10.00
03Every agent gets a machine
Sandboxes

Agents spawn in seconds, with your toolchain installed

Each agent spawns the full stack and runs the tests in its own sandbox, so ten agents on one repo never clobber each other.

Learn more
Sandboxessplitshift-web
sbox_2Wm7xB4hfirst buildfull
ready in 2m10s2m10s
sbox_9Jf5cV3knew commitincremental
ready in 41s41s
sbox_kF82mQ4rimage cache hitexact
ready in 8s8s
10 sessions on splitshift-web · isolated sandboxes
agents/feature-builder.yamlinstalls cached
sandbox:  repositories:    - name: splitshift-web    - name: splitshift-api  image:    setup: |      poetry install && npm ci  compute:    cpu: 4    memory: 8GB
04Under control
Governance

Scoped credentials, hard budgets, full audit trail

Agents stop running on developers’ own credentials. Permissions are minted per session, spend is capped and attributed, and the transcript outlives the sandbox.

Learn more
session_4Kp9dQ2wrunning
GitHub tokencontents: read · pull_requests: write · expires in 1h
Budget$1.84 spent of $5.00 session cap
Attributed topriya-shah (CLI device flow)
Transcript214 records · searchable · exportable
Stopped bynobody · one click away
The API

Spawning agents is as simple as POST /v1/sessions

Put an LLM decision-maker anywhere in your SDLC with no infra to manage. Spawn a session from any workflow and get typed, structured output back.

Learn more
POST /v1/sessions201
curl https://api.ellipsis.dev/v1/sessions \
  -H "Authorization: Bearer $ELLIPSIS_API_KEY" \
  -d '{
    "config_id": "agent_x9Kd3Fq2",
    "prompt": "Classify this incident and
      draft the postmortem outline"
  }'
{
  "id": "session_4Kp9dQ2w…",
  "status": "scheduled",
  "resolved_config_name": "Incident triage"
}
Self-hosted

No data ever leaves your VPC

Self-host in your AWS account and nothing leaves your VPC. Model calls can route through your own gateway for compliance and logging.

Learn more
your-aws-accountus-east-1

Your VPC

Ellipsis platform · sandboxes · session logs

model calls → your Bedrock account

or routed through your own LLM gateway

outbound data to ellipsis.dev: none

Entry points

Start agents from anywhere

One command starts a cloud session and streams it back to your terminal. Close the laptop; the agent keeps going.

splitshift-webzsh

$ agent -- "open a pull request to make the sidebar width adjustable"

using config "Feature builder" (repo default)

session_4Kp9dQ2w · sandbox ready in 8s

opened PR #517 · splitshift-web

The platform

Everything you need to run coding agents

From the YAML that defines an agent to the audit trail it leaves behind.

Why do agents need a cloud? →
400+
Engineering teams
67k+
Repos connected
16.8M
Agent sessions
SOC 2
Type 1 certified

Latest

From the blog

Deploy your first agent in minutes

Write the config, push to GitHub, and Ellipsis handles the rest.